﻿//#include "game.h"
//void menu()
//{
//	printf("********************************\n");
//	printf("*******1.play  0.exit***********\n");
//	printf("********************************\n");
//}
//
//void game()
//{
//	char mine[Rows][Cols] = { 0 };
//	char show[Rows][Cols] = { 0 };
//
//	Initboard(mine, Rows, Cols,'0');
//	Initboard(show, Rows, Cols,'*');
//
//	DisplayBoard(mine, Row, Col);
//	//DisplayBoard(show, Row, Col);
//
//	SetMine(mine, Row, Col);
//
//	FindMine(mine, show, Row, Col);
//
//}
//int main()
//{
//	int input = 0;
//	srand((unsigned int)time(NULL));
//	do
//	{
//		menu();
//		printf("请选择\n");
//		scanf("%d", &input);
//		switch (input)
//		{
//		case 1:
//			printf("扫雷开始\n");
//			game();
//			break;
//		case 0:
//			printf("退出游戏\n");
//			break;
//		default:
//			printf("输入错误\n");
//		}
//
//
//	} while (input);
//
//
//
//
//
//	return 0;
//}
//
//
//
//
//


//qsort排序整形
//#include <stdio.h>
//#include <stdlib.h>
//int pai(const void* p1, const void* p2)
//{
//	return *(int*)p1 - *(int*)p2;
//}
//int main()
//{
//	int arr[] = { 2,3,6,5,4,9,8,7,82 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	qsort(arr, sz, sizeof(int), pai);
//	for (int i = 0; i < sz; i++)
//	{
//		printf("%d ", arr[i]);
//
//	}
//	return 0;
//}

//排序结构体
//#include <stdlib.h>
//#include <stdio.h>
//struct stu
//{
//	char name[15];
//	int age;
//};
//
//int paixu(const void* p1, const void* p2)
//{
//	return ((struct stu*)p1)->age - ((struct stu*)p2)->age;
//
//}
//int main()
//{
//	struct stu s1[] = { {"zhangshan" ,31} ,{"lisi",26} ,{"wangwu",27}};
//	int sz = sizeof(s1) / sizeof(s1[0]);
//	qsort(s1, sz,sizeof(s1[0]),paixu);
//	for (int i = 0; i < sz; i++)
//	{
//		printf("%s %d  ", s1[i].name, s1[i].age);
//	}
//	return 0;
//	
//}


//qsort的模拟实现
//int _cmp(const void* p1, const void* p2)
//{
//	return (*(int*)p1 - *(int*)p2);
//}
//
//void swap(const void* p1, const void* p2,int n)
//{
//	for (int i = 0; i < n; i++)
//	{
//		char ret = *((char*)p1+i);
//		*((char*)p1+i) = *((char*)p2+i);
//		*((char*)p2 +i)=ret;
//	}
//}
//
//void Bubble_qsort(int base[], int num, int bite, int (*cmp)(const void*, const void*))
//{
//	for (int i = 0; i < num; i++)
//	{
//		for (int j = 0; j < num - i - 1; j++)
//		{
//			if (cmp((char*)base + j * bite, ((char*)base + (j + 1) * bite)  )>0);
//			swap((char*)base + j * bite, ((char*)base + (j + 1) * bite) ,bite);
//		}
//
//	}
//
//}
//#include <stdio.h>
//int main()
//{
//	int arr[] = { 12,43,1,6,8,5,4,9,11,25 };
//	int sz = sizeof(arr) / sizeof(arr[0]);
//	Bubble_qsort(arr, sz, sizeof(int), _cmp);
//	for (int i = 0; i < sz; i++)
//	{
//		printf("%d ", arr[i]);
//
//	}
//	return 0;
//}


#define _CRT_SECURE_NO_WARNINGS 1
//strstr模拟
#include <stdio.h>
#include <string.h>
char* my_strstr(const char* str1, const char* str2)
{
	char* cp = (char*)str1;
	char* s1;
	char* s2;
	if (!*str2)
		return((char*)str1);

	while (*cp)
	{
		s1 = cp;
		s2 = (char*)str2;
		while (*s1 && *s2 && !(*s1 - *s2))
			s1++, s2++;
		if (!*s2)
			return(cp);
		cp++;
	}
	return(NULL);
}

int main()
{
	char str[] = "This is a simple string";
	char* pch;
	pch = my_strstr(str, "simple");
	strncpy(pch, "sample", 6);
	printf("%s\n", str);
	return 0;
}
